home *** CD-ROM | disk | FTP | other *** search
/ Aminet 40 / Aminet 40 (2000)(Schatztruhe)[!][Dec 2000].iso / Aminet / disk / cdrom / MusicBox-2.1bi.lha / MusicBox / Icon2.c < prev    next >
Encoding:
C/C++ Source or Header  |  2000-09-29  |  12.2 KB  |  268 lines

  1. /*
  2.  ##########################################################################
  3.  ####                                                                  ####
  4.  ####                        The MusicBox Project                      ####
  5.  ####                    ============================                  ####
  6.  ####                                                                  ####
  7.  #### Icon2.c                                                          ####
  8.  ####                                                                  ####
  9.  #### Version 2.1os  --  September 29, 2000                            ####
  10.  ####                                                                  ####
  11.  #### Copyright (C) 1994  Thomas Dreibholz                             ####
  12.  ####               2000  Molbachweg 7                                 ####
  13.  ####                     51674 Wiehl                                  ####
  14.  ####                     Germany                                      ####
  15.  ####                                                                  ####
  16.  ####                     EMail: Dreibholz@bigfoot.com                 ####
  17.  ####                     WWW:   http://www.bigfoot.com/~dreibholz     ####
  18.  ####                                                                  ####
  19.  ##########################################################################
  20. */
  21. /***************************************************************************
  22.  *                                                                         *
  23.  *   This program is free software; you can redistribute it and/or modify  *
  24.  *   it under the terms of the GNU General Public License as published by  *
  25.  *   the Free Software Foundation; either version 2 of the License, or     *
  26.  *   (at your option) any later version.                                   *
  27.  *                                                                         *
  28.  ***************************************************************************/
  29.  
  30. /* MusicBox MusicBox-Icon */
  31.  
  32. struct Remember *ChipRemember=NULL;
  33.  
  34. UWORD CDMusicBoxI1Data[] =
  35. {
  36. /* Plane 0 */
  37.     0x0000,0x0000,0x0000,0x0000,0x0000,0x3FFF,0xFFFF,0xFFFF,
  38.     0xFC00,0x0003,0x3FFF,0xFFFF,0xFFFF,0xFCE8,0x0003,0x3FFF,
  39.     0xFFFF,0xFFFF,0xFC02,0x4DFF,0x3FFF,0xFFFF,0xFFFF,0xFC00,
  40.     0x0003,0x3FFF,0xFFFF,0xFFFF,0xFC00,0x017F,0x3FFF,0xFFFF,
  41.     0xFFFF,0xFC36,0xCC03,0x3FFF,0xFFFF,0xFFFF,0xFC00,0x0003,
  42.     0x3FFF,0xFFFF,0xFFFF,0xFC00,0x0003,0x3FFF,0xFFFF,0xFFFF,
  43.     0xFC0E,0xEAAB,0x3FFF,0xFFFF,0xFFFF,0xFC00,0x0003,0x3FFF,
  44.     0xFFFF,0xFFFF,0xFC00,0x0003,0x3FFF,0xFFFF,0xFFFF,0xFC00,
  45.     0x0003,0x3FFF,0xFFFF,0xFFFF,0xFC75,0x0003,0x3FFF,0xFFFF,
  46.     0xFFFF,0xFC00,0x24C7,0x2000,0x0000,0x0800,0x0C00,0x0003,
  47.     0x23FF,0x807E,0x4800,0x0C4E,0x912B,0x2000,0x0000,0x4800,
  48.     0x0C00,0x0003,0x23FF,0x87FE,0x4800,0x0C00,0x0003,0x2000,
  49.     0x0000,0x4800,0x0C0D,0x5257,0x23EF,0x807E,0x4800,0x0C00,
  50.     0x0003,0x2000,0x0000,0x4800,0x0C00,0x0003,0x23FF,0x87FE,
  51.     0x4800,0x0C06,0x9123,0x2000,0x0000,0x0800,0x0C00,0x0003,
  52.     0x3FFF,0xFFFF,0xFFFF,0xFC00,0x0003,0x3FFF,0xFFFF,0xFFFF,
  53.     0xFFFF,0xFFFF,0x0000,0x0000,0x0000,0x0000,0x1FFF,0x0000,
  54.     0x0000,0x0000,0x0000,0x1FFF,0x01ED,0xD5AB,0xC355,0x01AE,
  55.     0x0003,0x0000,0x0000,0x0000,0x0000,0x0003,0x0000,0x0000,
  56.     0x0000,0x0000,0x0003,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,
  57.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  58.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  59. /* Plane 1 */
  60.     0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xC000,0x0000,0x0000,
  61.     0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,
  62.     0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,
  63.     0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,
  64.     0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,
  65.     0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,
  66.     0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,
  67.     0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,
  68.     0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,
  69.     0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,
  70.     0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,
  71.     0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,
  72.     0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,
  73.     0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,
  74.     0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,
  75.     0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,
  76.     0x0000,0x0000,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xE000,0xFFFF,
  77.     0xFFFF,0xFFFF,0xFFFF,0xE000,0xFE12,0x2A54,0x3CAA,0xFE51,
  78.     0xFFFC,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFC,0xFFFF,0xFFFF,
  79.     0xFFFF,0xFFFF,0xFFFC,0xC000,0x0000,0x0000,0x0000,0x0000,
  80.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  81.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  82. /* Plane 2 */
  83.     0x0000,0x0000,0x0000,0x0000,0x0000,0x3FFF,0xFFFF,0xFFFF,
  84.     0xFBFF,0xFFFC,0x3CFC,0xFC8F,0xDFDF,0xFB17,0xFFFC,0x3C7E,
  85.     0x7197,0x9FD7,0xFBFD,0xB200,0x3EBF,0xBFDB,0xAFDB,0xFBFF,
  86.     0xFFFC,0x3FFE,0xDDFF,0xFFFF,0xFBFF,0xFE80,0x3E3F,0xDDEF,
  87.     0xAE13,0xFBC9,0x33FC,0x3FFF,0xFFFF,0xFFFF,0xFBFF,0xFFFC,
  88.     0x3FFF,0xFFFF,0xFFFF,0xFBFF,0xFFFC,0x3FFF,0xFFFF,0xFFFF,
  89.     0xFBF1,0x1554,0x3FFF,0x7FFF,0xF1FF,0xFBFF,0xFFFC,0x3C0F,
  90.     0x338F,0x1F38,0xFBFF,0xFFFC,0x3FFF,0xFFFF,0xFFFF,0xFBFF,
  91.     0xFFFC,0x0000,0x0000,0x0000,0x038A,0xFFFC,0x3FFF,0xFFFF,
  92.     0xFFFF,0xFBFF,0xDB38,0x3FFF,0xFFFF,0xF800,0x0BFF,0xFFFC,
  93.     0x3FFF,0xFFFF,0xFB9C,0xEBB1,0x6ED4,0x3FFF,0xFFFF,0xF800,
  94.     0x0BFF,0xFFFC,0x3FFF,0xFFFF,0xFB9C,0xEBFF,0xFFFC,0x3FFF,
  95.     0xFFFF,0xF800,0x0BF2,0xADA8,0x3FFF,0xFFFF,0xFB9C,0xEBFF,
  96.     0xFFFC,0x3FFF,0xFFFF,0xF800,0x0BFF,0xFFFC,0x3FFF,0xFFFF,
  97.     0xFB9C,0xEBF9,0x6EDC,0x3FFF,0xFFFF,0xF800,0x0BFF,0xFFFC,
  98.     0x3FFF,0xFFFF,0xFFFF,0xFBFF,0xFFFC,0x0000,0x0000,0x0000,
  99.     0x0000,0x0000,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFC,0x3FFF,
  100.     0xFFFF,0xFFFF,0xFFFF,0xFFFC,0x3E12,0x2A54,0x3CAA,0xFE51,
  101.     0xFFFC,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFC,0x3FFF,0xFFFF,
  102.     0xFFFF,0xFFFF,0xFFFC,0x0000,0x0000,0x0000,0x0000,0x0000,
  103.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  104.     0x0000,0x0000,0x8000,0x0000,0x0000,0x0000,0x0000,
  105. };
  106.  
  107. #asm
  108. E1:
  109.    public _CDMusicBoxI1Data_Len
  110. _CDMusicBoxI1Data_Len
  111.    dc.l E1-_CDMusicBoxI1Data
  112. #endasm
  113.  
  114. extern LONG CDMusicBoxI1Data_Len;
  115.  
  116.  
  117. struct Image CDMusicBoxI1 =
  118. {
  119.     0, 0,         /* Upper left corner */
  120.     80, 35, 3,       /* Width, Height, Depth */
  121.     CDMusicBoxI1Data,     /* Image data */
  122.     0x0007, 0x0000,     /* PlanePick, PlaneOnOff */
  123.     NULL       /* Next image */
  124. };
  125.  
  126. UWORD CDMusicBoxI2Data[] =
  127. {
  128. /* Plane 0 */
  129.     0x0000,0x0000,0x0000,0x0000,0x0000,0x3FFF,0xFFFF,0xFFFF,
  130.     0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,
  131.     0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,
  132.     0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,
  133.     0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,
  134.     0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,
  135.     0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,
  136.     0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,
  137.     0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,
  138.     0xFFFF,0xFFFF,0xFFFF,0x2000,0x0000,0x0800,0x0FFF,0xFFFF,
  139.     0x23FF,0x807E,0x4800,0x0FFF,0xFFFF,0x2000,0x0000,0x4800,
  140.     0x0FFF,0xFFFF,0x23FF,0x87FE,0x4800,0x0FFF,0xFFFF,0x2000,
  141.     0x0000,0x4800,0x0FFF,0xFFFF,0x23EF,0x807E,0x4800,0x0FFF,
  142.     0xFFFF,0x2000,0x0000,0x4800,0x0FFF,0xFFFF,0x23FF,0x87FE,
  143.     0x4800,0x0FFF,0xFFFF,0x2000,0x0000,0x0800,0x0FFF,0xFFFF,
  144.     0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,
  145.     0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xE003,0x3FFF,
  146.     0xFFFF,0xFFFF,0xFFFF,0xE003,0x3FFF,0xFFFF,0xFFFF,0xFFFF,
  147.     0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,
  148.     0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,
  149.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  150.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  151. /* Plane 1 */
  152.     0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xC000,0x0000,0x0000,
  153.     0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,
  154.     0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,
  155.     0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,
  156.     0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,
  157.     0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,
  158.     0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,
  159.     0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,
  160.     0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,
  161.     0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,
  162.     0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,
  163.     0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,
  164.     0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,
  165.     0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,
  166.     0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,
  167.     0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,
  168.     0x0000,0x0000,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xE000,0xFFFF,
  169.     0xFFFF,0xFFFF,0xFFFF,0xE000,0xFE12,0x2A54,0x3CAA,0xFE51,
  170.     0xFFFC,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFC,0xFFFF,0xFFFF,
  171.     0xFFFF,0xFFFF,0xFFFC,0xC000,0x0000,0x0000,0x0000,0x0000,
  172.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  173.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  174. /* Plane 2 */
  175.     0x0000,0x0000,0x0000,0x0000,0x0000,0x3FFF,0xFFFF,0xFFFF,
  176.     0xFBFF,0xFFFC,0x3CFC,0xFC8F,0xDFDF,0xFB17,0xFFFC,0x3C7E,
  177.     0x7197,0x9FD7,0xFBFD,0xB200,0x3EBF,0xBFDB,0xAFDB,0xFBFF,
  178.     0xFFFC,0x3FFE,0xDDFF,0xFFFF,0xFBFF,0xFE80,0x3E3F,0xDDEF,
  179.     0xAE13,0xFBC9,0x33FC,0x3FFF,0xFFFF,0xFFFF,0xFBFF,0xFFFC,
  180.     0x3FFF,0xFFFF,0xFFFF,0xFBFF,0xFFFC,0x3FFF,0xFFFF,0xFFFF,
  181.     0xFBF1,0x1554,0x3FFF,0x7FFF,0xF1FF,0xFBFF,0xFFFC,0x3C0F,
  182.     0x338F,0x1F38,0xFBFF,0xFFFC,0x3FFF,0xFFFF,0xFFFF,0xFBFF,
  183.     0xFFFC,0x0000,0x0000,0x0000,0x038A,0xFFFC,0x3FFF,0xFFFF,
  184.     0xFFFF,0xFBFF,0xDB38,0x3FFF,0xFFFF,0xF800,0x0BFF,0xFFFC,
  185.     0x3FFF,0xFFFF,0xFB9C,0xEBB1,0x6ED4,0x3FFF,0xFFFF,0xF800,
  186.     0x0BFF,0xFFFC,0x3FFF,0xFFFF,0xFB9C,0xEBFF,0xFFFC,0x3FFF,
  187.     0xFFFF,0xF800,0x0BF2,0xADA8,0x3FFF,0xFFFF,0xFB9C,0xEBFF,
  188.     0xFFFC,0x3FFF,0xFFFF,0xF800,0x0BFF,0xFFFC,0x3FFF,0xFFFF,
  189.     0xFB9C,0xEBF9,0x6EDC,0x3FFF,0xFFFF,0xF800,0x0BFF,0xFFFC,
  190.     0x3FFF,0xFFFF,0xFFFF,0xFBFF,0xFFFC,0x0000,0x0000,0x0000,
  191.     0x0000,0x0000,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFC,0x3FFF,
  192.     0xFFFF,0xFFFF,0xFFFF,0xFFFC,0x3E12,0x2A54,0x3CAA,0xFE51,
  193.     0xFFFC,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFC,0x3FFF,0xFFFF,
  194.     0xFFFF,0xFFFF,0xFFFC,0x0000,0x0000,0x0000,0x0000,0x0000,
  195.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  196.     0x0000,0x0000,0x8000,0x0000,0x0000,0x0000,0x0000,
  197. };
  198.  
  199. #asm
  200. E2:
  201.    public _CDMusicBoxI2Data_Len
  202. _CDMusicBoxI2Data_Len
  203.    dc.l E2-_CDMusicBoxI2Data
  204. #endasm
  205.  
  206. extern LONG CDMusicBoxI2Data_Len;
  207.  
  208. struct Image CDMusicBoxI2 =
  209. {
  210.     0, 0,         /* Upper left corner */
  211.     80, 35, 3,       /* Width, Height, Depth */
  212.     CDMusicBoxI2Data,     /* Image data */
  213.     0x0007, 0x0000,     /* PlanePick, PlaneOnOff */
  214.     NULL       /* Next image */
  215. };
  216.  
  217. struct DiskObject CDMusicBox =
  218. {
  219.     WB_DISKMAGIC,    /* Magic Number */
  220.     WB_DISKVERSION,     /* Version */
  221.     {          /* Embedded Gadget Structure */
  222.    NULL,       /* Next Gadget Pointer */
  223.    0, 0, 80, 36,     /* Left,Top,Width,Height */
  224.    GADGIMAGE | GADGHIMAGE, /* Flags */
  225.    RELVERIFY | GADGIMMEDIATE,    /* Activation Flags */
  226.    BOOLGADGET,    /* Gadget Type */
  227.    (APTR)&CDMusicBoxI1,   /* Render Image */
  228.    (APTR)&CDMusicBoxI2,   /* Select Image */
  229.    NULL,       /* Gadget Text */
  230.    NULL,       /* Mutual Exclude */
  231.    NULL,       /* Special Info */
  232.    0,       /* Gadget ID */
  233.    (APTR) 0x0001,    /* User Data (Revision) */
  234.     },
  235.     WBTOOL,       /* Icon Type */
  236.     NULL,         /* Default Tool */
  237.     NULL,         /* Tool Type Array */
  238.     NO_ICON_POSITION,      /* Current X */
  239.     NO_ICON_POSITION,      /* Current Y */
  240.     NULL,         /* Drawer Structure */
  241.     NULL,         /* Tool Window */
  242.     8192          /* Stack Size */
  243. };
  244.  
  245. VOID EntferneIcon()
  246. {
  247.  if(ChipRemember) FreeRemember(&ChipRemember,TRUE);
  248. }
  249.  
  250. BOOL InitIcon()
  251. {
  252.  REGISTER UBYTE *c1,*c2;
  253.  
  254.  c1=AllocRemember(&ChipRemember,CDMusicBoxI1Data_Len,MEMF_CHIP);
  255.  c2=AllocRemember(&ChipRemember,CDMusicBoxI2Data_Len,MEMF_CHIP);
  256.  if((c1==NULL)||(c2==NULL))
  257.   {
  258.    puts("Nicht genug Chip-Speicher!");
  259.    return(FALSE);
  260.   }
  261.  CopyMem(&CDMusicBoxI1Data,c1,CDMusicBoxI1Data_Len);
  262.  CopyMem(&CDMusicBoxI2Data,c2,CDMusicBoxI2Data_Len);
  263.  CDMusicBoxI1.ImageData=c1;
  264.  CDMusicBoxI2.ImageData=c2;
  265.  return(TRUE);
  266. }
  267.  
  268.